home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Atari Mega Archive 1
/
Atari Mega Archive - Volume 1.iso
/
gnu
/
smlltalk
/
smlltalk
< prev
next >
Wrap
Text File
|
1994-08-27
|
6KB
|
152 lines
GNU Smalltalk version 1.1
-rw-rw-r-- 1 gray 556569 Sep 25 15:18 smalltalk1-1.zoo
Here is a very early (probably very buggy) version of Gnu Smalltalk V1.1
port for the atariST.
requirements:
A 4M atariSt is really required.
a decent shell (i use gulam)
installing:
- adjust path names in mstpaths.h
- adjust makefile to find gcc (i call it cgcc)
- link or copy config/m-atari.h to mstconfig.h
- in ymakefile change the line that says
CFLAGS = CFLAGS = $(CFLAGS_NORMAL) $(READLINEDEF)
to
CFLAGS = $(CFLAGS_OPTIMIZE) $(READLINEDEF)
- in config/m-atari.h add the line
#define EXTRA_CC_FLAGS -fomit-frame-pointer -fcombine-regs
to the bottom of the file
- hit make
file names etc:
- if you use UNIXMODE, be sure to either
unsetenv UNIXMODE
or
create all the links using ln -s
-put all the files and executable in a subdir (i put them in \smalltk)
-on startup it will look in $HOME/stinit for the init file
-rename ProcessScheduler.st to ProcSched.st before transferring
files to your St (otherwise the name clashes with Processes.st)
-to make the image:
mst -V
this will dump mst.im and then will come to the interactive
prompt 'st>'. Hit Control-D at this point to exit.
to run
cd to the subdir with the image and sources
hit: mst
wait for the 'st>' prompt (this will take a while)
testing:
cd test
run.g run the gulam shell script
there will be two diffs, both are of no consequence.
cd examples
mst -V printhier.st
mst -V mem-usage.st this will take a while, and do a lot of gc
flipping.
enjoy,
--
bang: {any internet host}!dsrgsun.CES.CWRU.Edu!bammi jwahar r. bammi
domain: bammi@dsrgsun.ces.CWRU.edu
GEnie: J.Bammi
addendum:
while building the image, mst.ttp really needs all of memory. It cant
even stand gulam being there. once you have built the image, there is
no problem, you can run it quite comfortably with gulam and a few
acccessories present. the reason is as follows: when its building an
image, mst freezes the garbage collector, requesting more and more
memory from the system (instead of re-using what it has already via
garbage collection). so it ends up requesting a lot of memory (and
that is the error you are seeing). Once it builds up the image, at the
very end it kicks the GC in (you will see a message to this effect),
gc's and dumps the image into mst.im, and then its ready for action.
once you have built the image, there is no problem, at startup it'll
check all the kernel classes against the image, and unless something
has changed, it'll suck in the image in one fell scoop, and kick the
GC right in, and it happily goes along after that (with gulam etc present).
here is the procedure i would recommend:
(the default path built into mst.ttp is \smalltk, ie. a folder
called "smalltk" at the root of any drive)
- copy all the *.st files and mst.ttp into \smalltk
- from the desktop double click on mst.ttp
- in the dialog box that appears, enter "-V" (capital V)
- it'll think for a while and then start listing lines of
the form "processing foo.st..."
- after its done with all the kernel classes, it'll kick in
the GC, and then start dumping the image into MST.IM
-after thats done, it'll say smalltalk ready, and give
you a prompt.
- hit ^D (control-D) at the prompt to exit.
now you can enter gulam, cd to \smalltk, and hit mst -V,
it'll check for all the kernel files in \smalltk\*.st, it wont find
anything newer that the image, mst.im, which it'll suck in,
do a complete gc (this takes a few seconds), and then give the top level
interactive prompt.
[[ the above is no longer true in V 1.1, you can build an image using gulam ]]
however, watch out for large accessories, ramdisk etc.
------------------------------------------------------------------------------
GNU Smalltalk version 1.1
by Steve Byrne
The files in this directory and its subdirectories constitute the complete
source code for GNU Smalltalk. The files are organized as follows:
. The source files, both .st (Smalltalk) and C files
config Various supported platforms
contrib Contributed software
examples Some working example Smalltalk files
test Regression testing files
stix SmallTalk Interface to X
About GNU Smalltalk
GNU Smalltalk attempts to be a reasonably faithful implementation of
Smalltalk-80 {tm ParcPlace Systems} as described in the "Blue Book", also know
as "Smalltalk-80, the Language and its Implementation", by Adele Goldberg and
David Robson. The syntax that the language accepts and the byte codes that the
virtual machine interprets are exactly as they appear in the Blue Book. Most
of the primitives are the same as well, although due to the differing nature of
the implementation some of the primitives haven't been implemented, and other
new ones have been.
The current implementation has the following features:
* Incremental garbage collector
* Binary image save capability
* C-callout (allows Smalltalk to invoke user-written C code and pass
parameters to it)
* GNU Emacs editing mode
* Highly portable C code implementation
* Optional byte code compilation tracing and byte code execution tracing
* Automatically loaded per-user initialization files
Installing GNU Smalltalk
Please see the file mst.texinfo which contains the information on how to
install GNU Smalltalk, and general documentation about the features of
the system.
Bugs
To report bugs or suggestions (or even offer assistance :-) ), send mail
to bug-gnu-smalltalk@prep.ai.mit.edu. If there is sufficient traffic, I
will set up a gnu.smalltalk newsgroup as well.